//
//  WJJSON.h
//  WJJSON
//
//  Created by Yunhai.Wu on 15/9/9.
//  Copyright (c) 2015年 WJ. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "QWJSONGroupType.h"
#import "IQWJSONObject.h"
#import "NSObject+QWJSON.h"

@interface NSObject (QWConverter)

-(id) qwInitWithDictionary:(NSDictionary*) dictionary;

-(NSDictionary*) qwDictionary;

@end

/**
 *  JSON 解析入口
 */
@interface QWJSON : NSObject

/**
 *  将对象转成Json（可以直接解析NSDictionary，NSArray，NSObject）
 */
+(NSData*) toJson:(id) object;

/**
 *  将对象转成Json（可以直接解析NSDictionary，NSArray，NSObject）
 */
+(NSString*) toJsonString:(id) object;

/**
 *  解析Json
 */
+(id) fromJsonString:(NSString*) jsonString type:(Class) type;

/**
 *  解析Json
 */
+(id) fromJsonData:(NSData*) jsonData type:(Class)type;

/**
 *  解析Json
 */
+(id) fromJsonString:(NSString*) jsonString groupType:(QWJSONGroupType*) groupType;

/**
 *  解析Json
 */
+(id) fromJsonData:(NSData*) jsonData groupType:(QWJSONGroupType*) groupType;

/**
 *  返回NSDictionary 或者 NSArray
 */
+(id) fromJsonString:(NSString*) json;

/**
 *  返回NSDictionary 或者 NSArray
 */
+(id) fromJsonData:(NSData*)jsonData;


@end
